Material Workbench/de

Symbol des Arbeitsbereichs Material

Einleitung

eingeführt in 1.0

Werkzeuge

Zugehörige Werkzeuge

Diese materialbezogenen Werkzeuge werden zwar nicht vom Arbeitsbereich Material bereitgestellt, sind jedoch im Kern von FreeCAD enthalten und können ohne Laden des Arbeitsbereichs verwendet werden:

Einstellungen

Einstellungen für den Arbeitsbereich Material.

Arbeiten mit Materialien

Dieser Leitfaden erläutert die Kernkonzepte und Arbeitsabläufe für die Verwendung des Materialsystems in FreeCAD. Er behandelt die verschiedenen Werkzeuge, Eigenschaften und wichtigen technischen Details sowohl für die interaktive als auch für die skriptgesteuerte Verwendung.

Material-Werkzeuge

Material-Editor

Material-Auswahl

Physikalische vs. Darstellungs-Eigenschaften

Ein Material in FreeCAD wird durch zwei unterschiedliche Eigenschaftssätze definiert:

Ein Material muss nicht beides aufweisen. Einige Materialien sind möglicherweise nur für die Analyse definiert (nur mit physikalischen Eigenschaften), während andere nur für die Visualisierung definiert sind (nur mit Darstellungs-Eigenschaften).

Material-Darstellung überschreiben

Die endgültige Darstellung eines Objekts wird durch eine Hierarchie bestimmt. Die in einem Material festgelegten visuellen Eigenschaften können durch lokale Einstellungen am Objekt selbst überschrieben werden.

Eigenschaften

Wenn ein Material zugewiesen wird, verknüpft FreeCAD die Daten mit dem Objekt und seinem Viewprovider mithilfe von zwei Eigenschaften.

Ausdrücke

Auf Material-Eigenschaftswerte kann mithilfe von Ausdrücken zugegriffen werden, was besonders im Arbeitsbereich Spreadsheet nützlich ist. Um sicherzustellen, dass man eine verwendbare numerische Größe anstelle einer Textzeichenfolge erhält, muss das PropertyObjects-Dictionary verwendet werden.

=<<MyBody>>.ShapeMaterial.PhysicalProperties[<<Density>>]
→ Gibt "7850 kg/m^3" zurück
=<<MyBody>>.ShapeMaterial.PropertyObjects[<<Density>>].Value
→ Gibt ein Quantity-Objekt zurück, das die Tabelle numerisch verwenden kann.
Wenn sich dieser Wert in der Zelle A1 der Tabelle befindet, kann man eine Formel in Zelle A2 wie = A1 * 10 schreiben, und es wird korrekt verwendet.

Skripten

Materialeigenschaften können mithilfe von Python-Skripten abgerufen und festgelegt werden. Die wichtigsten Methoden sind .getPhysicalValue() und .setPhysicalValue().

import FreeCAD
import FreeCADGui

# Get a reference to your object (e.g., a PartDesign Body)
obj = App.ActiveDocument.getObject("Body")

# --- Check for and get a property ---
if obj.ShapeMaterial.hasPhysicalProperty("Density"):
    
    # Get the value. This returns a FreeCAD.Quantity object.
    density_quantity = obj.ShapeMaterial.getPhysicalValue("Density")
    
    print(f"The material is: {obj.ShapeMaterial.Name}")
    print(f"The density is: {density_quantity}")
    print(f"Numerical value: {density_quantity.Value}")

else:
    print("The selected material does not have a 'Density' property.")


# --- Set a property ---
# The value can be a string with units or a FreeCAD.Quantity object.
try:
    obj.ShapeMaterial.setPhysicalValue("Density", "8000 kg/m^3")
    App.ActiveDocument.recompute()
    print("Density successfully updated.")

except Exception as e:
    print(f"Failed to set property: {e}")